// let userStore = useUserStore()


// export default function(router,userStore) {
	
// 	async function requireLogin(){
		
// 		console.log('检测是否登录')
// 		if(userStore.isLogin)
// 		{
// 			return true 
// 		}
		
// 		// 获取令牌不成功,1.用户未注册 2.账号密码错误
		
// 		let result = false
// 		try{
// 			//#ifdef MP-WEIXIN
// 				//微信登录不可能不成功,自动登录,自动注册.
// 				result = await userStore.wxlogin();
// 			//#endif
			
// 			console.log('启动登录页面')
// 			//#ifdef !MP
// 				uni.navigateTo({
// 					url:'/pages/account/id_login/id_login'
// 				})
				
// 				result = await new Promise((resolve,reject)=>{
// 					uni.$once('onIdLogin',(result)=>{
// 						console.log('$once:onIdLogin')
// 						if(result)
// 						{
// 							setTimeout(()=>{
// 								resolve(true)
// 							},100)
// 						}else
// 						{
// 							reject('ERROR')
// 						}
// 					})
// 				})
				
// 			//#endif
// 		}catch(e){
// 			uni.showToast({
// 				icon:'error',
// 				title:'登录失败'
// 			})
// 		}
		
// 		uni.showToast({
// 			title:'登录成功',
// 			duration:500,
// 		})
		
// 		return true 
// 	}
	 
// 	router.beforeEach(async (to, from) => {
// 		// 执行一些全局逻辑操作
// 		console.log('Before navigation');
// 		console.log(to)
// 		// 进行权限验证或其他操作
// 		if(to.meta.requireLogin && await requireLogin())
// 		{
// 			// uni.redirectTo({
// 			// 	url:to.path
// 			// })

// 			return  //'/pages/account/id_login/id_login'
// 		}
		
// 		return // to.path
			
// 		// 用户已经登录，继续导航
// 	});
// }

export default function(router,userStore) {
	async function login(to) {

		// 获取令牌不成功,1.用户未注册 2.账号密码错误

		try {
			let result =  false
			
			//#ifdef MP-WEIXIN
			//微信登录不可能不成功,自动登录,自动注册.
			result = await userStore.wxlogin();
			//#endif
	
			console.log('WW')
			//#ifdef !MP
			let that = this
			
			uni.$once('onIdLogin', (result) => {
				console.log('$once:onIdLogin')
				if(result)
				{
					setTimeout(()=>{
						console.log('重定向到')
						console.log(to)
						uni.redirectTo({
							url:to.path
						})
					},10)
					 
					uni.showToast({
						title: '登录成功',
						duration: 500,
					})
				}
				else {
					uni.redirectTo({
						url:'/pages/error'
					})
					
					uni.showToast({
						title: '登录失败',
						duration: 500,
					})
				}
			})
	
			//#endif
		} catch (e) {
			uni.showToast({
				icon: 'error',
				title: '登录失败'
			})
			return false
		}
		
		return true
	}
	 
	router.beforeEach(async (to, from) => {
		// 执行一些全局逻辑操作
		console.log('Before navigation');
		
		// 进行权限验证或其他操作
		if(to.meta.requireLogin && !userStore.isLogin)
		{
			await login(to)
			
			return '/pages/account/id_login/id_login'
		}
		
		return // to.path
			
		// 用户已经登录，继续导航
	});
}